import YAML from 'yaml'

export async function parseYum(src: string) {
  const doc = YAML.parse(src) as any

  // 1. 兼容字段缺失的情况
  const rawNodes = doc?.workflow?.graph?.nodes ?? []
  const rawEdges = doc?.workflow?.graph?.edges ?? []

  return {
    nodes: rawNodes.map((n: any) => ({
      id: n.id,
      label: n.data?.title ?? n.data?.desc ?? n.id, // 给你看的文字
      type: n.data?.type ?? 'unknown', // 节点类型
      data: n.data, //节点数据（包括属性）
    })),

    edges: rawEdges.map((e: any) => ({
      source: e.source,
      target: e.target,
      // 需要更多字段自己加
    })),
  }
}
